package main

import (
	"fmt"
	"reflect"
)

func main() {
	of := reflect.ValueOf(3)
	fmt.Println("reflect.ValueOf(3): ", of)
	fmt.Println("reflect.ValueOf(3): ", of.String())
	fmt.Println("reflect.ValueOf(3).Type(): ", of.Type())
	i := of.Interface()
	fmt.Println("reflect.ValueOf(3).Interface(): ", i)
	val := i.(int)
	fmt.Println("reflect.ValueOf(3).Interface().(int): ", val)
}
